package com.fatec.lojavirtual.managedbean;

import java.util.List;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;

import com.fatec.lojavirtual.entidade.Endereco;

@ManagedBean
@RequestScoped
public class EnderecoBean {

	
	private Endereco enderecoAtual;
	private List<Endereco> enderecos;
	
	public EnderecoBean(){
		this.enderecoAtual = new Endereco();
//		this.setEnderecos(new ArrayList<Endereco>());
	}

	public void inserir(){
		EnderecoRN enderecoRN = new EnderecoRN();
		FacesMessage msg;
		long aux;
		
		if ((aux = enderecoAtual.getId()) == 0)
		{
			enderecoRN.inserir(enderecoAtual);			
			msg = new FacesMessage("Endereco cadastrado com sucesso!");			
		}
		else
		{
			enderecoRN.atualizar(enderecoAtual);			
			msg = new FacesMessage("Endereco atualizado com sucesso!");
		}
		
		this.setEnderecoAtual(new Endereco());
		
		FacesContext context = FacesContext.getCurrentInstance();
		context.addMessage(null, msg);
	}
	
	public void remover(Endereco e){
		EnderecoRN enderecoRN = new EnderecoRN();
		enderecoRN.remover(e);
	}
	
	public void editar(Endereco e){
			this.setEnderecoAtual(e);
	}
	
	public void cancelar(){
		this.setEnderecoAtual(new Endereco());
	}
	
	public Endereco getEnderecoAtual() {
		return enderecoAtual;
	}

	public void setEnderecoAtual(Endereco enderecoAtual) {
		this.enderecoAtual = enderecoAtual;
	}

	public List<Endereco> getEnderecos() {
		EnderecoRN enderecoRN = new EnderecoRN();
		this.enderecos = enderecoRN.pesquisar();
		return this.enderecos;
	}

	public void setEnderecos(List<Endereco> enderecos) {
		this.enderecos = enderecos;
	}
	
}
